
/*
**Copyright (C) 2022, HITCRT_VISION, all rights reserved.
*/
#pragma once
#include "EKF.h"
#include "KF.h"
#include "KFC.h"
#include "KFS.h"
namespace hitcrt {
class KalmanFactory {
  public:
    KalmanFactory() = default;
    ~KalmanFactory(){};
    static std::shared_ptr<hitcrt::KFC> createKFCV();
    static std::shared_ptr<hitcrt::KFC> createKFCA();
    static std::shared_ptr<hitcrt::KFS> createKFS();
    static std::shared_ptr<hitcrt::EKF> createEKF();
};
} // namespace hitcrt
